package com.yyh.liuyanbantest;

import java.util.LinkedList;
import java.util.Queue;
import java.util.Scanner;

public class MessageBoardSystem {
    private Queue<Message> messageQueue;
    private Scanner scanner;
    public MessageBoardSystem(){
        messageQueue = new LinkedList<>();
        scanner = new Scanner(System.in);
    }

    public static void main(String[] args) {
        MessageBoardSystem mbs = new MessageBoardSystem();
        mbs.showMenu();
    }
    //显示系统菜单
    public void showMenu(){
        while ( true){
            System.out.println("-------欢迎登录留言板系统-------");
            System.out.println("---------主菜单-----------");
            System.out.println("1. 查询留言");
            System.out.println("2. 添加留言");
            System.out.println("3. 退出系统");
            System.out.print("请选择：");
            String choice = scanner.nextLine().trim();
            switch (choice) {
                case "1":
                    query();
                    break;
                case "2":
                    add();
                    break;
                case "3":
                    exit();
                    return;
                default:
                    System.out.println("输入错误！请重新输入！");
            }
            System.out.println();
        }
    }
    //查询留言
    public void query(){
        System.out.println("\n=== 查询留言 ===");
        if (messageQueue.isEmpty()){
            System.out.println("没有留言！");
            return;
        }
        System.out.println("所有留言列表（按时间顺序显示）：");
        int count = 1;
        for (Message message : messageQueue) {
            System.out.println("第" + count + "条留言：");
            System.out.println(message);
            count++;
        }

    }
    //添加留言
    public void add(){
        System.out.println("\n=== 添加留言 ===");
        System.out.print("请输入用户名：");
        String name = scanner.nextLine().trim();
        if (name.isEmpty()){
            System.out.println("用户名不能为空！");
            return;
        }
        System.out.print("请输入留言日期：");
        String date = scanner.nextLine().trim();
        if (date.isEmpty()){
            System.out.println("留言日期不能为空！");
            return;
        }
        System.out.print("请输入留言标题：");
        String title = scanner.nextLine().trim();
        if (title.isEmpty()){
            System.out.println("留言标题不能为空！");
            return;
        }
        System.out.print("请输入留言内容：");
        String content = scanner.nextLine().trim();
        if (content.isEmpty()){
            System.out.println("留言内容不能为空！");
            return;
        }
        Message message = new Message(name, date, title, content);
        messageQueue.add(message);
        System.out.println("留言添加成功！");
    }
    //退出系统
    public void exit(){
        System.out.println("\n=== 退出系统 ===");
        System.out.println("已退出系统！");
    }

}
